package com.cskaoyan.javse.oop2._1extends._10final._3variable._0introduction;
/**
 * final修饰变量,表示最后的变量,最终的变量.表示常量
 * 它可以修饰局部变量,成员变量,静态成员变量
 *
 * 在具体讲解final修饰某种变量前,我们要明白三个原则:
 *      1.final修饰变量表示常量. 常量的分类: 1.字面值常量 1,2.0,"hello" 2.自定义常量
 *          用final修饰的变量就是自定义常量
 *          自定义常量有自己的命名规范: 常量的名字应该字母全部大写,两个单词之间用"_"隔开,比如MAX_VALUE
 *          但是常量的命名规范的要求没有那么高,即便是java源码中,很多也没有这么写,所以我们也不强制要求
 *          在实际开发中,用final修饰的静态成员变量,多用大写的形式
 *
 *      2.final修饰一个变量,只不过是让它的值不能变化了,成为一个常量了.但是变量的内存存储位置,生命周期,使用方式等不会因为它是常量而改变.
 *
 *      3.final修饰变量,从数据类型的分来来说,分为修饰基本数据类型和引用数据类型
 *          修饰基本数据类型,表示值不变,是常量
 *          修饰引用数据类型,修饰的是引用,表示引用中存储的地址是一个常量 --> 这表示引用无法指向另一个对象,但是对象的状态(成员变量的取值)仍然可以修改.
 * 
 * @since 15:48
 * @author wuguidong@cskaoyan.onaliyun.com
 */
public class Demo {
    public static void main(String[] args) {
        System.out.println();
    }
}
